package com.gpframework.module.wages.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.gpframework.module.wages.domain.GzPersonnelFoundation;
import com.gpframework.module.wages.domain.vo.*;

import java.util.List;
/**
 * @ClassName GzPersonnelFoundation
 * @Author gpframework
 * @Date 2024-01-18
 * @Version 1.0.0
 * @Description 人员基础Service接口
 */
public interface IGzPersonnelFoundationService extends IService<GzPersonnelFoundation> {

    /**
     * @Description 查询列表返回VO 用于返回给前端的列表接口
     * @Author gpframework
     * @Date 2024-01-18
     * @Param [lqw]
     * @Return List<GzPersonnelFoundationVo>
     */
    List<GzPersonnelFoundationVo> listVo(QueryWrapper<GzPersonnelFoundation> lqw);

    /**
     * @Description 通过查询详情VO 用于返回给前端的列详情接口
     * @Author gpframework
     * @Date 2024-01-18
     * @Param [id]
     * @Return GzPersonnelFoundationVo
     */
    GzPersonnelFoundationVo getVoById(Long id);

    List<SalarySummaryVo> salarySummary(String month, String deptName);

    List<GzPersonnelVersionVo> personnelVersion(String month, String deptName, String name);

    List<GzOfficeSalaryVo> gzOfficeSalarySummary(String month ,String deptName);

    List<GzTransferVo> transfeSummary(String month, String deptName);

    List<GzWarehousePersonnelVo> warehouseSummary(String month, String deptName);

    String importListNote(List<GzPersonnelFoundationVo> excelList, boolean isUpdateSupport);
}
